package jmine.tec.rpc.common.serialization.json;

import jmine.tec.json.JSON;
import jmine.tec.json.JSONNullObject;

/**
 * Conversor de JSON para Java e vice-versa
 * 
 * @author lundberg
 */
public class JSONNullObjectConverter implements JSONConverterStrategy {

    /**
     * {@inheritDoc}
     */
    public boolean matchesJava(Object object) {
        return object == null;
    }

    /**
     * {@inheritDoc}
     */
    public boolean matchesJSON(JSON json) {
        return JSONNullObject.INSTANCE.equals(json);
    }

    /**
     * {@inheritDoc}
     */
    public Object toJava(JSONConversionContext context, JSON json) {
        return null;
    }

    /**
     * {@inheritDoc}
     */
    public JSON toJSON(JSONConversionContext context, Object object) {
        return JSONNullObject.INSTANCE;
    }
}
